home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Danny Amor's Online Library
/
Danny Amor's Online Library - Volume 1.iso
/
html
/
faqs
/
faq
/
prolog
/
resource-guide.part2
< prev
Wrap
Text File
|
1995-07-25
|
83KB
|
1,530 lines
Subject: FAQ: Prolog Implementations 2/2 [Monthly posting]
Newsgroups: comp.lang.prolog,comp.object.logic,news.answers,comp.answers
From: mkant+@cs.cmu.edu (Mark Kantrowitz)
Date: 13 Nov 1994 08:03:53 GMT
Archive-name: prolog/resource-guide/part2
Last-Modified: Fri Nov 11 15:19:23 1994 by Mark Kantrowitz
Version: 1.24
Maintainer: Mark Kantrowitz <mkant+prg@cs.cmu.edu>
URL: http://www.cs.cmu.edu:8001/Web/Groups/AI/html/faqs/lang/prolog/prg/top.html
Size: 83234 bytes, 1531 lines
;;; ****************************************************************
;;; Prolog Resource Guide ******************************************
;;; ****************************************************************
;;; prg_2.faq
This is part two of the Prolog Resource Guide. This part lists
available Prolog, logic programming, and constraint system
implementations, both free and commercial.
Send suggestions and comments to: mkant+prolog-guide@cs.cmu.edu
Prolog Implementations (Part 2):
[2-0] General information about Prolog Implementations
[2-1] Free Prolog Implementations
[2-2] Commercial Prolog Implementations
[2-3] Free Parallel Prolog Implementations
[2-4] Commercial Parallel Prolog Implementations
[2-5] Free Constraint Systems
[2-6] Commercial Constraint Systems
[2-7] Free Logic Programming Systems
[2-8] Commercial Logic Programming Systems
[2-9] Other Commercial Prolog Products
[2-10] Prolog extensions, meta-interpreters, and pre-processors
Search for [#] to get to topic number # quickly. In newsreaders which
support digests (such as rn), [CTRL]-G will page through the answers.
----------------------------------------------------------------
Subject: [2-0] General information about Prolog Implementations
When comparing free and commercial Prolog implementations, a rule of
thumb is that commercial prolog implementations are often more robust
and better supported than the public domain and free prolog
implementations. Commercial Prolog implementations tend to have better
debugging facilities. Many of the commercial Prolog vendors offer
educational discounts to universities, and some of the commercial
Prolog implementations are rather inexpensive.
When considering a commercial Prolog implementation, be sure to ask
for current pricing information. Although we try to keep this
information up to date, there is no guarantee that it hasn't changed
in the interim. If you find that the information has changed, please
ask the vendor to send us current information.
Some research institutions make their Prolog implementations available
for a fee. We have included those implementations in the lists of
commercial Prolog implementations.
The Prolog Vendors' Group may be contacted by email via the Secretary,
Al Roth, at <alroth@cix.compulink.co.uk>.
Remember when ftping compressed or compacted files (.Z, .arc, .fit,
.zip, .z, etc.) to use binary mode for retrieving the files.
Files that end with a .z suffix were compressed with the patent-free
gzip (no relation to zip). Source for gzip is available from:
prep.ai.mit.edu:/pub/gnu/
as the files gzip-1.2.3.shar, gzip-1.2.3.tar,or gzip-1.2.3.msdos.exe.
----------------------------------------------------------------
Subject: [2-1] Free Prolog Implementations
The following list of free Prolog and logic programming implementations
excludes those listed in the comp.lang.lisp and comp.lang.scheme FAQs
(i.e., Prolog interpreters written in Lisp and Scheme).
Most of these Prolog implementations are available from the CMU AI
Repository, in the directory
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/
A.D.A. Public Domain Prolog:
aisun1.ai.uga.edu:ai.prolog/adapdpro.zip
A rather slow implementation of Prolog for MS-DOS systems, originally
a product of Automata Design Associates (now defunct), 1570
Arran Way, Dresker, PA 19025, 215-335-5400.
Aquarius Prolog:
Aquarius Prolog is a high-performance, portable Prolog implementation
developed since 1989 by the Aquarius Project at UC/Berkeley, the Advanced
Computer Architecture Laboratory (ACAL) at the University of Southern
California (USC), and at Digital Equipment Corporation's Paris Research
Laboratory. The developers are Tom Getzinger, Ralph Clarke Haygood, and
Peter Van Roy. Aquarius Prolog includes:
- A compiler with global analysis. The compiler is built around the
Berkeley Abstract Machine (BAM) execution model for Prolog. BAM
retains desirable features of the Warren Abstract Machine (WAM),
but allows for significant further optimizations and is easier to
map onto actual general-purpose machines.
- A back-end that maps the BAM onto various actual general-purpose
machines, including MIPS R3000 (DEC Ultrix and MIPS RISC/os),
SPARC (SunOS), HP 9000 300/400 with MC68020, MC68030 or MC68040
processors (HP-UX), and Sun3 (SunOS).
- A run-time system offering substantially the same built-in
predicates and memory management as Quintus Prolog, with additions
such as two kinds of destructive assignment. Most of the built-in
predicates are written in Prolog, with little or no performance
penalty.
Aquarius Prolog also includes an interpreter and documentation.
Aquarius Prolog comes in two distributions, Enduser and Full. The
latter includes full source code and implementation notes.
Aquarius Prolog may be obtained free of charge from USC, after signing
and returning a license agreement. To get the license agreement, send a
message to listserv@acal-server.usc.edu with
get aquarius-info license
in the message body. To get more information about the Full and
Enduser distributions, send the listserver a message containing
one or both of the two lines:
get aquarius-info readme-full
get aquarius-info readme-enduser
To subscribe to the aquarius-prolog mailing list, send the listserver a
message with body:
subscribe aquarius-prolog <Your real name here>
To get more information about the abilities of the listserver, send it a
message with 'help' in the body.
For further information, write to University of Southern California,
Advanced Computer Architecture Laboratory (ACAL), Attn: Aquarius Prolog
Licensing, 3740 S. McClintock, Suite 131, Los Angeles, CA 90089-2561, or
send email to aquarius@acal-server.usc.edu.
Beta-Prolog (version 1.2):
Beta-Prolog is a fast and portable Prolog implementation. It consists
of an emulator of the NTOAM (matching Tree Oriented Abstract Machine)
written in C, a compiler written in Prolog that translates Prolog
programs into NTOAM instructions, and a library of built-in
predicates.
Beta-Prolog has the following features:
1. It is one of the fastest emulator-based Prolog implementations.
The NTOAM inherits many good features of the WAM, but differs from
WAM-based systems in that predicate arguments are passed directly
in stack frames and only one frame is used for each predicate. For
many programs written for WAM-based systems, Beta-Prolog is faster
than emulator-based SICStus Prolog 2.1. Further speed-ups can be
achieved if these programs are rewritten into a style suitable for
Beta-Prolog by taking the NTOAM's argument passing scheme into
account.
2. Besides Edinburgh style clauses, Beta-Prolog also accepts
matching clauses in which input and output unifications are
separated, and determinism is denoted explicitly. The compiler is
able to translate predicates in this form into matching trees and
index them using all input arguments. The compiler can compile
quite large programs in a short time because it consists of only
matching clauses.
3. It provides an interactive interface through which the
programmers can consult, compile, load, debug and run programs.
4. It provides an interface through which C functions can be
called from Prolog.
5. It provides a special data structure called state tables that
can be used to represent graphs, simple and complex domains in
constraint satisfaction problems, and situations in various
combinatorial search problems.
6. It includes a finite-domain constraint solver with which
constraint satisfaction problems can be specified declaratively.
Beta-Prolog is available by anonymous ftp from
ftp.kyutech.ac.jp:/pub/Language/prolog/ [131.206.1.101]
or from the CMU AI Repository in
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/beta_pl/
The system can be installed without difficulty on any machine that
runs Unix and the cc (or gcc) C compiler. Beta-Prolog was developed by
Neng-Fa Zhou, <zhou@mse.kyutech.ac.jp>, Faculty of Computer Science
and Systems Engineering, Kyushu Institute of Technology, 680-4 Kawazu,
Iizuka, Fukuoka 820, Japan, phone 81-948-29-7774, fax 81-948-29-7760.
For more information, send mail to betaprolog@cad.mse.kyutech.ac.jp.
BinProlog:
clement.info.umoncton.ca:/BinProlog3.0.tar.gz [139.103.16.2]
ftp.elis.rug.ac.be:/pub/BinProlog/ [157.193.67.1]
BinProlog replaces the WAM by a more compact continuation passing logic
engine based on a mapping of full Prolog to binary logic programs. It
includes an interface Tcl/Tk. Version 2.20 runs on Sparc, DEC Alpha,
MIPS (SGI, DEC) 68k (NeXT, Sun3), R6000 (IBM), PA-RISC (HP) and IBM PC
(386/486). The compiler makes 528 KLIPS on a Sparc 10-40 (101 KLIPS on a
NeXT) and still uses a very small (49K under Solaris 2.1) emulator,
making it among the fastest freely available C-emulated Prologs (3-5
times faster than C-Prolog, 2-3 times faster than SWI-Prolog, 1.5-2
times faster than (X)SB-prolog and close to C-emulated Sicstus 2.1.).
Comments and bug reports should be sent to Paul Tarau
<binprolog@info.umoncton.ca>.
BinProlog is free for reasearch and other non-profit purposes. Use in
industrial applications, licensing of C-sources, porting to other
platforms, BinProlog related support and consulting are available but
need a separate agreement. BinProlog's very small code-size and high
performances make it suitable to be integrated in industrial
C-applications that need the services of an embedded logic
programming engine.
Boizumault Prolog:
The various Prolog interpreters described in Patrice Boizumault's
book, "The Implementation of Prolog", are available by anonymous
ftp from
cnam.cnam.fr:/pub/Boizumault/
or from the CMU AI Repository in
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/boiz_pl/
The three interpreters, corresponding to appendices A through D of
the book, are written in Common Lisp. Examples which run in all the
interpreters include cryptarithms, Eliza, Sieve of Eratosthenes,
Factorial, N-Queens, and Quicksort. For more information, write to
Patrice Boizumault <boizu@math-appli-uco.fr>.
Common ESP:
CESP (Common Extended Self-contained Prolog) is an object-oriented
system by the AI Language Research Institute, Kamakura, Japan. The
binary is free for R & D use only -- send 1/4in CMT Sun3 and Sun4
(Sparc) with Sun OS R4.0.3, R4.1 or R4.1.1. For more information,
write to AI Language Research Institute Ltd, Yoshitoku Bldg, Shiba
3-15-14, Minato-Ku, Tokyo 105, Japan, fax +81 3 3456 4418, or send
email to k-hata@air.co.jp or matsuura@air.co.jp.
cu-Prolog: See [2-5].
ECLiPSe (ECRC Logic Programming System) combines the functionalities
of several ECRC systems, including SEPIA (an Edinburgh-style
extensible Prolog system based on a WAM compiler), MegaLog (a database
system) and CHIP (a constraint logic programming system). ECLiPSe
includes a Prolog compiler with extended functionality that is Quintus
and SICStus compatible, a tightly connected database system based on
the BANG file system, a CLP system, and an interface to the Tcl/Tk X11
toolkit. The BANG database can store not only relations, but also any
Prolog structures and programs. The CLP system contains several
libraries with various types of constraint handling schemes, including
atomic finite domains, linear rational constraints, CHR (constraint
handling rules) and Propia (generalised propagation). It also
supports writing further extensions like new user-defined constraints
or complete new constraint solvers. ECLiPSe also includes a profiler,
user-definable syntax, metaterms as first-class citizens, coroutining,
a high-level debugger (OPIUM), a partial evaluation system (PADDY),
and unlimited precision integer and rational numbers. ECLiPSe is
available for a nominal fee of DM 300 (~$200) to all academic and
government-sponsored organizations. It is distributed in binary form
for Sun-3 and Sparc machines. Send orders or requests for further
information to eclipse_request@ecrc.de or write to ECRC,
Arabellastrasse 17, 81925 Munich, Germany. The ECLiPSe documentation
(ASCII and dvi) and some shareware packages ported to ECliPSe are now
available by anonymous ftp from
ecrc.de:/pub/eclipse
To subscribe to the eclipse_users@ecrc.de mailing list, send mail to
eclipse_request@ecrc.de. The tech support email address is
eclipse_bugs@ecrc.de.
eLP (Ergo Lambda Prolog) is an interpreter written by Conal Elliott,
Frank Pfenning and Dale Miller in Common Lisp and implements the core
of lambda Prolog (higher-order hereditary Harrop formulas). It is
embedded in a larger development environment called ESS (the Ergo
Support System). eLP implements all core language feature and offers
a module system, I/O, some facilities for tracing, error handling,
arithmetic, recursive top-levels, on-line documentation and a number
of extended examples, including many programs from Amy Felty's and
John Hannan's thesis. It should run in Allegro Common Lisp, Lucid
Common Lisp, Kyoto Common Lisp, CMU Common Lisp and Ibuki Common Lisp.
The eLP implementation of lambda Prolog is no longer developed or
maintained, but it is still available via anonymous ftp from
ftp.cs.cmu.edu:/afs/cs.cmu.edu/project/ergo/export/ess/. The file
ergolisp.tar.Z contains the Ergo project's extensions to Common Lisp,
including some facilities for attributes and dealing with abstract
syntax trees. The file sb.tar.Z contains the Ergo
Parser/Unparser/Formatter generator and ab.tar.Z contains the Ergo
Attribute Grammar facility. The file elp.tar.Z contains the Ergo
implementation of lambda Prolog. To customize grammars you need the
sb.tar.Z file. When you retrieve the system, please print, fill out,
and send in a copy of the non-restrictive license you will find in the
file LICENSE. To subscribe to the elp@cs.cmu.edu mailing list, send
mail to elp-request@cs.cmu.edu. Bugs should be sent to
elp-bugs@cs.cmu.edu.
ESL Prolog-2 (PD Version):
ai.uga.edu:ai.prolog/eslpdpro.zip [128.192.12.9]
A prolog for MS-DOS systems with good performance. It deviates
slightly from Edinburgh standard (strings "like this" are not lists
of ASCII codes), but you can add a declaration that makes it fully
Edinburgh-compatible. (Add the line
:- state(token_class,_,dec10).
at the beginning of the program.) It is a more limited version
of the interpreter from the Commercial Version (see [2-2] below).
[Please note that ESL Prolog is NOT a UGA product, they just run
the machine on which a copy is made available. Anyone with
questions should contact ESL in Oxford, England (see [2-2] below).
The commercial version of ESL Prolog-2 has been sold to ESI.]
Documentation is available as a 2-volume set published by Ablex
(type "prolog2" for info). ESL Prolog is also discussed
extensively in Tony Dodd's book "Prolog: A Logical Approach,"
Oxford University Press.
GOEDEL is intended to be a declarative successor to Prolog. The main
design aim of Goedel is to have functionality and expressiveness
similar to Prolog, but to have greatly improved declarative semantics
compared with Prolog. This improved declarative semantics has
substantial benefits for program construction, verification,
debugging, transformation, and so on. Considerable emphasis is placed
on Goedel's meta-logical facilities, since this is where Prolog is
most deficient. In particular, Goedel has declarative replacements
for Prolog's var, nonvar, assert, and retract. Goedel is a strongly
typed language, its type system being based on many-sorted logic with
parametric polymorphism. It has a module system, and supports floating
point numbers and infinite precision integers and rationals. It can
solve constraints over finite domains of integers and also linear
rational constraints. It supports processing of finite sets. It also
has a flexible computation rule and a pruning operator which
generalises the commit of the concurrent logic programming languages.
The release includes the Goedel system, the SAGE partial evaluator for
Goedel, a user manual, and 50 example programs. Goedel must be
compiled in SICStus Prolog 2.1 #6 or later; Sparc and Linux
executables are included in the distribution. Goedel is available by
anonymous ftp from
ftp.cs.kuleuven.ac.be:/pub/logic-prgm/goedel/ [134.58.41.2]
ftp.cs.bris.ac.uk:/goedel [137.222.102.102]
For more information, write to goedel@compsci.bristol.ac.uk. Please
send an email message to this address (with your name, institution and
address) to this address when you obtain the system. To subscribe to
the goedel-users@compsci.bristol.ac.uk mailing list, send mail to
goedel-users-request@compsci.bristol.ac.uk
indicating that you wish to join the Goedel discussion group.
A book describing the language is now available from MIT Press:
Patricia Hill and John Lloyd, "The Godel Programming Language",
MIT Press, Cambridge, MA, 1994. ISBN 0-262-08229-2 ($45.00).
IC-Prolog II:
src.doc.ic.ac.uk:/computing/programming/languages/prolog/icprolog/.
The emulator is available at present only in Sun-4 binary form.
Source code may be released later in the year when project
finishes.
Produced by Imperial College, IC-Prolog II is a multi-threaded
Prolog system. It includes a Parlog sub-system, an interface to
TCP primitives and "mailboxes", a high level communication
system. These enable distributed applications (such as
client/server systems) to be written using logic programming.
The distribution also includes a simple expert system shell and
the preprocessor for the Prolog language extension L&O from the
book "Logic & Objects" by Frank McCabe. (The sources for the
L&O extension is also available to LPA MacProlog users in the
subdirectory 'lo'.)
See "I.C. Prolog II : a Multi-threaded Prolog System" by Damian
Chu and Keith Clark and also "IC Prolog II: a Language for
Implementing Multi-Agent Systems" by Damian Chu. Postscript
copies of these two papers may be found in the subdirectory
'papers'.
Standalone versions of the Parlog system for Sun-3 and Sun-4
can also be found in this directory.
Contact Damian Chu <dac@doc.ic.ac.uk> for questions about IC
Prolog II, and contact Zacharias Bobolakis <zb@doc.ic.ac.uk> for
information about L&O.
JB-Prolog 2.1.2 is a slim and powerfull prolog for the MacIntosh. Its key
features are: Arbitrary long integers, fast interpreter only, source
line debugger, user interface toolkit, persistent objects. It is
available from the CMU AI repository as
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/jbprolog/JBprolog2.1.2.sit.hqx
For more information contact Jan Burse, jburse@clients.switch.ch,
XLOG, Scheuchzerstr. 67, 8006 Zrich, Switzerland.
PIE2 is a Prolog interpreter for DOS. It is available on CompuServe in
the AIEXPERT forum. PIE2.zip contains the interpreter and examples, and
PIEDOC.ZIP contains the documentation. Written by Brent Ruggles
<ruggles@shell.com>.
Prolog-68 is a free WAM-based Prolog system running on Atari ST and TT
computers. Not yet finished (no floating point, some missing
built-ins). Contact Jens Kilian <jensk@hpbbn.bbn.hp.com> for
information. Available by anonymous ftp from
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/prolog/prolog68/
as a ZOO archive.
Prolog/Mali is a compiler for the higher-order language Lambda-Prolog.
Lambda-Prolog is an extension of Prolog defined by Miller (Miller,
D.A., and Nadathur, G., "Higher-order logic programming", 3rd
International Conference on Logic Programming, pages 448-462, London
1986). It is an extension of Prolog where terms are simply typed
lambda terms and clauses are higher order hereditary Harrop formulas.
The main novelties are universal quantification on goals and
implication. Prolog/Mali is a complete system which includes a C
translator, a linker, libraries, runtime, and documentation, and runs
on UNIX. It requires the MALI-V06 abstract memory package.
Prolog/Mali is available by anonymous ftp from ftp.irisa.fr:/pm/.
Written by Pascal Brisset <brisset@irisa.fr> (or <brisset@ecrc.de>)
and Olivier Ridoux (ridoux@irisa.fr). To be added to the mailing list,
send mail to prolog-mali-request@irisa.fr. For more information, send
mail to pm@irisa.fr.
LIFE (Logic, Inheritance, Functions, and Equations) is an experimental
programming language with a powerful facility for structured type
inheritance. It reconciles styles from functional programming, logic
programming, and object-oriented programming. It subsumes the
functionality of its precursor languages LOGIN and Le_Fun, and may be
seen as an extension of Prolog. The syntax of Wild_LIFE has been kept
as close as possible to that of the Edinburgh standard for Prolog.
LIFE offers natively high-level abstraction facilities and convenient
data and control structures particularly well-suited for AI
programming. LIFE implements a constraint logic programming language
with equality (unification) and entailment (matching) constraints over
order-sorted feature terms. The interplay of unification and matching
provides an implicit coroutining facility thanks to an automatic
suspension mechanism. This allows interleaving interpretation of
relational and functional expressions which specify structural
dependencies on objects. The Wild_LIFE interpreter is the first
implementation of the LIFE language available to the general public.
It is a product of Digital Equipment Corporation's Paris Research
Laboratory (DEC PRL). Wild_LIFE runs on MIPS/Ultrix (DECstations),
Alpha/OSF-1, SPARC/SunOS, RS/6000, and SGI machines, and should
be portable to other Unix workstations. It is implemented in C,
and includes an interface to X Windows. Wild_LIFE is available
by anonymous ftp from gatekeeper.dec.com:/pub/plan as the file
Life1.0.tar.Z. To be added to the mailing list (life-users@prl.dec.com),
send mail to life-users-request@prl.dec.com. Send bug reports to
life-bugs@prl.dec.com.
Open Prolog:
Open Prolog (OP) is a Prolog interpreter for the Apple Macintosh.
It follows the so-called 'Edinburgh' syntax and supports most standard
Prolog features, including Definite Clause Grammars.
Extra predicates can be added via drop-in external predicates, similar to
Hypercard's XCMDs.
OP will work in any Macintosh from a Plus upwards, and is now
32-bit clean.
OP is available by anonymous ftp from
grattan.cs.tcd.ie:/languages/open-prolog/ [134.226.32.15]
It is also available from other sites, such as:
sumex-aim.stanford.edu:/info-mac/
mac.archive.umich.edu [141.211.165.41]
nexus.yorku.ca:/pub/prolog/ [130.63.9.1]
aisun1.ai.uga.edu [128.192.12.9]
/afs/umich.edu/group/itd/archive/mac/development/languages
but the most recent version will always be available from
grattan, OP's home site.
For more information, write to Michael Brady, Computer Science
Department, Trinity College, Dublin 2, IRELAND, send email to
brady@cs.tcd.ie, call +353 1 7021786, or fax +353 1 6772204 (5 hours
ahead of East Coast US time).
PD Prolog 19:
wuarchive.wustl.edu:/mirrors/msdos/prolog/prolog19.arc (IBM PC)
aisun1.ai.uga.edu (128.192.12.9)
Portable Prolog System is an interpreter from the University of York.
Runs on any system having a Pascal compiler. For more information,
write to University of York, Software Distribution Officer, Department
of Computer Science, University of York, York, YO1 5DD, UK, call +44
(904) 59861, or fax +44 (904) 433744.
Qu-Prolog 3.2 and Ergo 4.0:
Qu-Prolog is a high-level language designed primarily for rapid
prototyping of interactive theorem provers and, more generally, for
symbolic computation on formal languages. Its object level includes
quantified terms and object variables. As an example, the interactive
theorem prover Ergo 4.0 is implemented in Qu-Prolog. The compactness
and high level of Ergo 4.0 source code demonstrate the advantages of
Qu-Prolog for such applications. Ergo includes a 'window inference'
method that is specifically designed to support hierarchical
goal-directed proofs and allow easy access to the context of a
subterm. Ergo also provides support for defining a variety of logics
and support for proving schematic theorems and answer extraction.
Ergo is being used to support the development of verified software.
The system has been tested only on a Sun4.
Qu-Prolog and Ergo are available by anonymous ftp from
ftp.cs.uq.oz.au:/pub/SVRC/
as software/qp.tar.Z and software/Ergo.tar. The tech report
techreports/tr93-18.ps.Z describes Qu-Prolog in detail. Send comments
to Peter Robinson <pjr@cs.uq.oz.au>.
SB-Prolog:
cs.arizona.edu:/sbprolog
sbcs.sunysb.edu:/pub/sbprolog
Stony Brook Prolog runs on Sun4, Pyramid-98x, DEC3100, SGI Iris,
Amiga, and MS-DOS machines. Contact warren@sbcs.sunysb.edu for more
information. Two versions are available: version 2.5 is an
interpreter for Amigas and version 3.1 is an interpreter and compiler
for Unix and MSDOS/386.
SB-Hilog runs in SB-Prolog and Quintus Prolog and is available on
sbcs.sunysb.edu:/pub/hilog/
src.doc.ic.ac.uk [146.169.2.10] contains SBProlog 3.1 executables for
MS-DOS/386 in /computing/programming/languages/prolog/sbprolog,
filename sbpmsdos.zip.
nic.funet.fi contains SBProlog executables for Amiga in
/pub/amiga/fish/disks100-199/ff140.
Modular SB-Prolog (= SB-Prolog version 3.1 plus modules) is available
by anonymous FTP from
ftp.dcs.ed.ac.uk:/pub/dts/mod-prolog.tar.Z [129.215.160.5]
Includes interpreter for SPARC. For more information, write to
Brian Paxton <mprolog@dcs.ed.ac.uk>.
[NOTE: SB-Prolog is superseded by XSB (see below) and hence is
no longer supported by Stony Brook or the University of Arizona.
The only reason to continue using SB-Prolog is for DOS, since
XSB does not run under DOS and there are currently no plans to
port it to DOS.]
SLG:
The SLG system is a meta interpreter implementation of
goal-oriented deductive query processing and non-monotonic
reasoning with the following features:
* goal-oriented query evaluation of normal logic programs
under the well-founded semantics by Van Gelder, Ross
and Schliph;
* goal-oriented query evaluation of general logic programs
under the alternating fixpoint logic by Van Gelder, with
the restriction that the body of a clause has to be either
an existential conjunction of literals or a universal
disjunction of literals.
* goal-oriented query evaluation under the stable model semantics
by Gelfond and Lifchitz.
* integration with Prolog execution, and the use of Prolog syntax
for all programs.
The SLG system is freely available by anonymous ftp from Southern
Methodist University or SUNY at Stony Brook
seas.smu.edu:/pub/ [129.119.3.2]
sbcs.sunysb.edu:/pub/XSB/ [130.245.1.15]
as the file slg.tar.gz. Comments, requests, and bug reports should
be sent to Weidong Chen, <wchen@seas.smu.edu>, Computer Science and
Engineering, Southern Methodist University, Dallas, Texas 75275-0122,
phone 214-768-3097, or David Scott Warren, <warren@cs.sunysb.edu>,
Department of Computer Science, SUNY at Stony Brook, Stony Brook,
NY 11794-4400, phone 516-632-8454.
SWI Prolog:
swi.psy.uva.nl:/pub/SWI-Prolog/ [145.18.114.17] (Main source)
as the files pl-1.9.tar.gz (sources), win-pl.zip (Windows 3.1 application),
xos.tgz (DOS File I/O redefinition) and GNU readline
[The patch level (last digit) is regularly updated and diffs between
patch levels are located in the same directory.]
mpii02999.ag2.mpi-sb.mpg.de:pub/tools/SWI/ [139.19.20.250] (OS/2)
ftp.th-darmstadt.de:/pub/programming/languages/prolog/ [130.83.22.253]
rs3.hrz.th-darmstadt.de [130.83.55.75]
SWI-Prolog includes a fast compiler, a profiler, C interface, a
module system, libraries, and dynamic loading.
Runs on Atari ST, Gould PN, NeXT, HP, IBM Linux, DEC MIPS, IBM
PS/2 AIX, OS/2, IBM RS/6000, Sun3, Sun4, Sparc, and Vax.
Written by Jan Wielemaker, SWI, University of Amsterdam,
Roetersstraat 15, 1018 WB Amsterdam, The Netherlands,
<jan@swi.psy.uva.nl>. Ported to OS/2 by Andreas Toenne,
<atoenne@mpi-sb.mpg.de>. The mailing list is prolog@swi.psy.uva.nl.
To be added to the list, send mail to prolog-request@swi.psy.uva.nl.
Toy Prolog is an interpreter written in Pascal. About 3500 lines of
source. Free with "Prolog for Programmers" by Kluzniak and Szpakowicz
(Academic Press 1985). The Atari ST version is no longer supported.
TPM (Transparent Prolog Machine) is a demo version of LPA MacProlog
with the TPM debugger included. Runs on Apple Macintosh. It is
available by anonymous FTP from hcrl.open.ac.uk:/pub/software/.
Tricia is a free Prolog high-level emulator with interpreter available
by email from Uppsala University. Tricia currently runs on the Apple
Macintosh. It used to run on Sun3, Sun4, Apollo DN-3500/4500/5500 (OS
version 10.*) and HP-730's, but support for those platforms has been
discontinued. For more information, write to Uppsala University,
Tricia project, Computing Science Department, Box 311, S-751 05
UPPSALA, Sweden, fax +46 18 511925, or email to
tricia-request@csd.uu.se. It is available by anonymous ftp from
ftp.csd.uu.se:/pub/Tricia/
A copy is also available in the directory
/afs/umich.edu/group/itd/archive/mac/development/languages
if your site runs the Andrew File System, or by anonymous ftp from
mac.archive.umich.edu.
WAMCC 2.2 is a WAM-based Prolog to C compiler. It conforms more or
less to the Edinburgh standard, and includes most of the usual
built-in predicates, a top-level, a Prolog debugger and a WAM
debugger. WAMCC is designed to be easily extended (see clp(FD) in
[2-5], for example). WAMCC's speed is halfway between SICStus emulated
and SICStus native code on a Sparc (1.5 times faster and 1.5 times
slower, respectively). WAMCC requires GCC 2.4.5 or higher and has been
tested on Sparc workstations. It should be easily ported to 32-bit
machines with GCC. WAMCC is available free by anonymous ftp from
ftp.inria.fr:/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/wamcc/
For more information, write to Daniel Diaz <Daniel.Diaz@inria.fr>,
INRIA Rocquencourt, FRANCE.
XSB is a Prolog-based Logic Programming System that extends the
standard functionality of Prolog with an implementation of OLDT
(tabling) and HiLog terms. It is a descendent of PSB-Prolog and
SB-Prolog. OLDT resolution is useful for recursive query computation,
allowing programs to terminate correctly in many cases where Prolog
does not. HiLog supports a type of higher-order programming in which
predicate symbols can be variable or structured. This allows
unification to be performed on the predicate symbols themselves in
addition to the arguments of the predicates. XSB includes an
optimizing compiler, C interface, a module system, list processing
libraries, and dynamic loading. XSB is a descendant of SB-Prolog.
XSB runs on Sun3, Sun4, 386/486 PCs (Linux and 386 BSD), SGI machines
(IRIX), HP 300/400 series (HP-UX) and NeXT, and can be compiled using
either the GNU C compiler or the Sun C compiler. Porting XSB to any
32-bit machine running Unix should be straightforward. THIS IS A BETA
RELEASE. XSB is available by anonymous ftp from
sbcs.sunysb.edu:/pub/XSB/XSB.tar.Z [130.245.1.15]
For more information, write to XSB Research Group, Computer Science
Department, SUNY at Stony Brook, Stony Brook, NY 11794, or send email to
xsb-contact@cs.sunysb.edu.
See also BeBOP and NCL in [2-3].
----------------------------------------------------------------
Subject: [2-2] Commercial Prolog Implementations
AAIS Full Control Prolog (version 3.1.3) is an Edinburgh-standard
compiler and interpreter that runs on all Apple 680x0 Macintosh computers
(from Plus through Quadras and Powerbooks). It runs under System 6
and 7 (or A/UX 3.0), requiring 4mb RAM, and is 32-bit clean. It
is built on an object-oriented kernel, includes many object-oriented
extensions to the language, functions for constructing graphical user
interfaces, direct program access to the printer for printing text or
graphics, and full support for Apple Events. There are also numerous
example programs, including source code for the AAIS Full Control
Prolog's own standard development interface, and how to interface with
Oracle databases and FileMaker Pro databses. AAIS Full Control Prolog
costs $495. For an additional $199 (and a signed license), you can get a
copy of AAIS Prolog Program Creator, an application generator/runtime
distribution system that turns Prolog programs into Macintosh
applications. For more information, write to Advanced AI Systems,
Inc., PO Box 39-0360, Mountain View, CA 94039-0360, call 415-948-8658,
fax 415-948-2486, or email AAISProlog@aol.com. Earlier version (2.0)
reviewed in AI Expert, Feburary 1991.
[NOTE: Douglas Lanam, President of Advanced AI Systems, Inc.,
announced on April 1, 1994, that he would be ceasing all future
development of the product due to economic and personal reasons. The
remaining stock of AAIS Full Control Prolog and the Program Creator is
being offered on an as-is basis with no return for $99 a copy. You
can order copies by phone using your credit card.
Technical support through phone, mail, and email is continuing, but
they cannot return phone calls or faxes outside North America, so
those replies would be sent by email or snail mail.]
AIAI Edinburgh Prolog is a high level prolog emulator that runs on
Acorn R140 (RISC iX), DG AViiON (DG/VX 4.1), Vax (Berkeley Unix, VMS),
Gould Encore (Unix), HP 9000/300 (HP-UX), MIPS RISC (RiscOS), Sequent
(DYNIX V3), Sun 2,3,4 (SunOS-3,4). For more information, write to
AIAI, AI Applications Institute, Software Secretary, University of
Edinburgh, 80 South Bridge, Edinburgh EH1 1HN, UK, call +44 (31) 650
2734, fax +44 (31) 226 2730, or send email to AIAI@ed.ac.uk.
ALS Prolog runs on 80386 machines, including DOS ($799), Sun 386i,
Xenix, Apple Macintosh ($499), System V Unix (Microport), Sun3, Sun4,
Sparc, Aviion, NeXT, VAX and Delta88. Workstation versions $4,500.
Student editions $59. Provides a superset of Edinburgh Prolog. Includes
OOP, X Windows/Motif/Windows interface, and C interface (Prolog programs
may be embedded in C programs). It is available from Applied Logic
Systems, Inc., PO Box 180, Newton Centre, MA 02159, phone 617-965-9191,
fax 617-965-1636, or email info@als.com, sales@als.com, or
support@als.com. Send a message to info@als.com with subject line "HELP"
to get a general information file in reply.
Arity Prolog 6.1 is an emulator with interpreter and compiler and runs on
DOS ($650), OS/2 ($1k), Windows (extra $350), OS/2 V.2, and Windows-NT.
(Note that Windows support means that you can write Prolog programs that
manipulate Windows. The Windows version of Arity Prolog does not itself
run under MS Windows.) For more information, write to Arity Corporation,
Damonmill Square, Concord, MA 01742, call 800-722-7489 (508-371-1243),
fax 508-371-1487, or send email to 73677.2614@compuserve.com or Paul G.
Weiss <pgweiss@netcom.com>.
ProLog by BIM is a high-performance and robust implementation of the
Prolog language. It compiles to native machine code for maximum
execution speed, and provides flexible memory management with automated
expansion, shrinking, garbage collection and user-definable parameters.
The ProLog by BIM environment comprises a GUI including an execution
monitor and debugger, an on-line help facility, a extended emacs
interface and a profiler. ProLog by BIM also includes a bi-directional
external language interface, which is used for the included interfaces
to graphics, windowing and RDBMS packages. The system also comes with a
large library of Prolog source code which contains many of the most
commonly used predicates. Stand-alone run-times without royalties and
embeddability allow problem-free end-user delivery. ProLog by BIM comes
with Carmen, a WYSIWYG GUI-Generator delivering Prolog code that allows
notifiers and call-backs in Prolog and serves as a powerful
rapid-prototyping aid. ProLog by BIM runs on SPARC, INTEL PC running
Solaris 2.x, HP700 and IBM RS/6000. BIM provides both training and
consultancy on Prolog and Prolog based developments efforts. For more
information write to BIM sa/nv, ProLog by BIM dept., Kwikstraat 4,
B-3078 Everberg, Belgium, call +32 2-759-59-25, fax to +32 2-725-47-83
(or +32 2-759-47-95) or email to prolog@sunbim.be.
CIM-Prolog is a high-level emulator with interpreter for Apollo Domain
and Sun (Unix). Also Standard Prolog for Apollo Domain, IBM PC/AT (DOS),
INMOS transputer, and Sun. A parallel version is also available.
For more information, write to Creative Soft GmbH, Turnstrasse 10, D-8510
Fuerth, Germany, call +49 911 7499214, or fax +49 911 747756.
Coder's Prolog 2.0 is a Prolog Interpreter from Austin Code Works. Works
on any system with a C compiler (it is designed for use with C
programs), including IBM PCs (MS-DOS) and Unix workstations. For
more information, write to Austin Code Works, 11100 Leafwood Lane,
Austin, TX 78750-3587, call 512-258-0785, fax 512-258-1342, or send
email to info@acw.com.
Cogent Prolog 3.0 is an Edinburgh-standard compiler and interpreter.
Compiled and interpreted code may be intermixed in the same program (for
ease of debugging). The full system includes a debugger, definite clause
grammar support, full-screen shell, standard listener, support for
16-bit and 32-bit protected mode, linker, .exe generator and
royalty-free distributable runtime (DOS or Windows $248, both $347).
Compiler & interpreter without linker and distributable runtime ($149).
Interpreter alone ($49). Also available is an interactive tutorial, the
Active Prolog Tutor ($75) and full source code for expert system shell
prototypes for forward/backward chaining, frames, Rete-network and more
($82). All are IBM-PC (DOS) based. For more info or tech support, email
amzi@world.std.com, or contact Amzi! Inc., 40 Samuel Prescott Dr., Stow,
MA 01775. Tel: 508-897-7332. Fax: 508-897-2784.
Delphia Prolog v2 is an Edinburgh-standard compiler and interpreter that
runs on Sun3, Sun4, Sparc, RS/6000, Apollo, HP9000/300, Unigraph 68xxx,
386/486 (SCO Unix), DecStation (Ultrix), Sony NEWS (Unix), VAX (VMS,
Ultrix), uVax (Ultrix), VaxStation (Ultrix). Includes database
interfaces, graphical libraries, and incremental compilation. Price
$10,000. Write to Delphia, 27 Avenue de la Republique, 38170 Seyssinet,
France, call 33-76-26-68-94 or fax 33-76-26-52-27. An earlier version
was reviewed in AI Expert, January 1991 and Feburary 1991.
ECRC SEPIA. See ECLiPSe. SEPIA is no longer delivered as a
stand-alone system, but as a part of ECLiPSe.
EDCAAD C-Prolog is a prolog interpreter for Sun (SunOS), VAX (Ultrix,
VMS), Apollo, and 68000 (Unix). An inexpensive academic license is
available. It is an interpreter-based system, and hence is slower than
WAM-based Prologs. It is implemented in C, and should run on almost
any 32-bit machine with a C compiler. For more information, write to
EdCAAD, Department of Architecture, Edinburgh University, 20 Chambers St.,
Edinburgh EH1 1JZ, UK, call +44 (31) 650 1000, fax +44 (31) 667 0141,
or send email to chris@caad.ed.ac.uk.
FRIL (Fuzzy Relational Inference Language) is a logic-programming
language that incorporates a consistent method for handling
uncertainty, based on Baldwin's theories of support logic, mass
assignments, and evidential reasoning. Mass assignments give a
consistent way of manipulating fuzzy and probabilistic uncertainties,
enabling different forms of uncertainty to be integrated within a
single framework. Fril has a list-based syntax, similar to the early
micro-Prolog from LPA. Prolog is a special case of Fril, in which
programs involve no uncertainty. Fril runs on Unix, Macintosh, MS-DOS,
and Windows 3.1 platforms. For further information, write to Dr B.W.
Pilsworth, Fril Systems Ltd, Bristol Business Centre, Maggs House, 78
Queens Rd, Bristol BS8 1QX, UK. A longer description is available as
ftp.cs.cmu.edu:/user/ai/areas/fuzzy/com/fril.txt
GT-Prolog is a high performance implementation of Edinburgh-standard
Prolog for the Commodore Amiga. GT-Prolog includes the ProBench
interactive development environment supporting incremental compilation,
a multi-port debugger based on the Byrd model, a source code editor, and
a break facility. GT-Prolog provides transparent access to sophisticated
optimization techniques including Tail Recursion Optimisation, First
Argument Indexing/Hashing, In-line Arithmetic Evaluation and automatic
Garbage Collection of code and data. Error handling is based on catch
and throw mechanisms. GT-Prolog is also one of the first implementations
to support a fully logical Prolog database. GT-Prolog provides explicit
control of memory allocation allowing programs to use up to 16mb for
data and 4gb for code and requires a minimum configuration of 1Mb memory
plus Workbench version 2 or later. GT-Prolog includes a library of more
than 120 predicates that provide user programs with access to the
facilities of AmigaDOS. The single user price is 89.95 pounds sterling
inclusive of VAT and postage/packing. For more information, write to
Graham Thwaites, Grange Technology Limited, Stream Road, Upton, Didcot,
Oxon OX11 9JG, UK, tel/fax +44-1235-851818, or send email to
gtpam@gtech.demon.co.uk or 100434.3011@compuserve.com.
HyperProlog. See Delphia Prolog.
IBM PROLOG for AIX/6000 (PFA) is a high performance implementation of
the PROLOG language, combined with a powerful programming environment,
especially designed for the IBM RISC System/6000 under AIX. PFA was
developed by BIM as an adaptation of ProLog by BIM for the IBM RISC
System/6000 under AIX. It was selected by IBM Europe as their
official PROLOG implementation for the RISC System/6000 (Program
Number 5776-FAH). For more information: In North-America contact BIM
systems, 11111 Santa Monica Bld, call 310-445-1500, fax to
+310-445-1515; in Europe contact your local IBM representative.
Elsewhere contact BIM, Kwikstraat 4, B-3078 Everberg, Belgium, call
+32 2 759 59 25, or fax +32 2 759 92 09, or email prolog@sunbim.be.
IF/Prolog 5.0 is a Prolog interpreter and compiler with a variety of
highly efficient constraint problem solving tools, including Boolean
constraints, Rational terms, Linear terms, Equations and Inequations,
Finite Domain Constraints and Co-routines. IF/Prolog conforms to the ISO
Prolog Standard, part 1. IF/Prolog also includes interfaces to C, C++,
FORTRAN, X11 (OSF/Motif and Athena widgetsets), and SQL (Ingres, Oracle,
and Informix). IF/Prolog has full screen X11 and Windows based debuggers
and online hypertext help and quick reference guide. It is available on
Unix, OSF/1, VMS, MS-Windows, and mainframe systems, including Apollo,
Aviion 300, Macintosh (A/UX), microVAX 2000 (Ultrix), Vax (Ultrix, VMS),
VaxStation (Ultrix), DEC Alpha (OSF/1, VMS), HP9000, Sun3, Sun4, Sparc,
UTS, AIX/370, IBM RS/6000, Decstation (Ultrix, OSF/1), Sequent S16,
Silicon Graphics, Sony News (Unix), Motorola, Nixdorf, Interactive Unix,
SCO UNIX, DOS-based 386 PCs, and Windows 3.0/3.1. Academic licenses are
available at half price. For more information contact Annette Kolb
(marketing) or Dr. Andrew Verden (technical) at InterFace Computer GmbH,
Otto-Hahn-Ring 6, D-81739 Munich, tel +49 89 636-46089, fax +49 89
636-40140, or email prolog@mch.sni.de. American customers may write to
American InterFace Computer, Inc., One Westlake Plaza, 1705 Capital of
Texas Highway South, Suite 200, Austin, TX 78746, call 512-327-5344, fax
512-327-5176, or email ifc@cactus.org.
IQSOFT MProlog is a high-level emulator with interpreter for Unix,
Macintosh and IBM PC (DOS). Runs on Vax (Unix 4.2 BSD), 68000-based
machines (Unix), Tektronix 4404, HP3000, and Siemens 1. For more
information, write to IQSOFT, SZKI Intelligent Software Ltd., Iskola u.
10., Budapest, H-1011, Hungary, call +36 1 201 6764, fax +36 1 201 7125, or
send email to szeredi@iqsoft.hu.
LPA Prolog is a prolog compiler for IBM PCs (DOS, Windows, 386) and
Apple Macintosh. LPA Prolog++ is an object-oriented programming system
based on Prolog. (See Chris Moss's book on Prolog++ in [1-3].)
MacProlog32 includes incremental 32-bit compilation and Edinburgh syntax
compatability, and runs under System 7. Programmer Edition is $745
list, and the Developer Edition, which includes a runtime generator for
producing standalone applications, is $1,495. LPA Prolog for Windows
runs $745, as does LPA Prolog for DOS. Prolog++ runs $995 ($1,995
Developer Edition). Write to Logic Programming Associates, Ltd., Studio
4, Royal Victoria Patriotic Building, Trinity Road, London SW18 3SX,
England, call +44 081-871-2016, fax +44 081-874-0449, or send email to
lpa@cix.compulink.co.uk (sales, tech support), UK0049@applelink.apple.com
(Clive Spenser), or 100135.134@compuserve.com. In the US call
800-949-7567. LPA products are distributed in North America by Quintus
under the Quintus name.
Maxon Prolog is available for the Atari ST from the German magazine
'ST-Computer' for 298 DM. Tel: 010 49 61 96 481811.
MU-Prolog, NU-Prolog are prolog interpreters from the University of
Melbourne. Source licences are available for educational institutions.
Implemented in C for BSD Unix. Currently running on Sun3, Sun4, Vax,
Elxsi, Encore, and SGI. For more information, write to University of
Melbourne, MU-Prolog Distribution, Department of Computer Science,
Parkville, Victoria 3052, Australia, call +61 3 344 7270, or send email to
lee@cs.mu.oz.au or jws@cs.mu.oz.au.
OU Prolog is a prolog interpreter from Open University for IBM PC
(MS-DOS). Includes video, books. Ask for item PD622 and quote
reference SA69. For more information, write to Open University,
Learning Materials Sales Office, PO Box 188, Milton Keynes MK7 6DH, UK.
PDC Prolog runs on IBM PCs (DOS, OS/2, Windows and SCO Unix). Formerly
known as Turbo Prolog from Borland. Includes a native code compiler
but is incompatible with most other prologs. Its variables are
strongly typed, unlike most other prologs. For more information, write
Prolog Development Center, 568 14th Street, Atlanta, GA 30318, call
800-762-2710, (404-873-1366), fax 404-872-5243 or email
pdc-request@pdc.dk (general information), sales@pdc.dk (sales),
support@pdc.dk (tech support). A BBS is run at 404-872-5358. European
customers may write to Prolog Development Center, A/S, H.J. Holst Vej
5A, DK-2605 Broendby, Denmark, call +45 36 72 10 22, or fax +45 36 72
02 69. Reviewed in AI Expert January 1991. Other email addresses
include 753CD.165@compuserve.com. To subscribe to the
PDC-L@nic.surfnet.nl mailing list, a discussion list for PDC Prolog
users, send mail to LISTSERV@nic.surfnet.nl with
SUBSCRIBE PDC-L <your full name>
in the message body.
POPLOG is a high-level prolog emulator with interpreter for Unix. The POPLOG
environment integrates four AI programming languages in one
environment: Lisp, Prolog, ML and POP11. POPLOG can also load in C and
Fortran binaries. Runs on VAX (Ultrix, VMS), VAXStation (Ultrix),
DECStation (Ultrix), Sun 3,4, Sparc, Solbourne, HP Apollo 9000/400,
Sparc (HP-UX), MIPS (RISCOS), Sequent Symmetry (Dynix), Apple
Macintosh (AUX), SONY News (News-OS), and Silicon Graphics Iris
(Irix). The academic version from Sussex University. For more
information, write to POPLOG, Sussex University, Poplog Manager,
School of Cognitive Sciences, Falmer, Brighton BN1 9QN, UK, call +44
273 608367, fax +44 273 678188, or send email to popsales@cogs.sussex.ac.uk
or popmanager@cogs.sussex.ac.uk. The commercial version is available
from Integral Solutions Ltd as Integral Poplog and Pop++. For more
information, write to Integral Solutions Ltd, Unit 3, 23 Campbell
Court, Bramley, Basingstoke Hampshire RG26 5EG, UK, call +44 256 88 20
28, fax +44 256 88 21 82, or send email to isl@integ.uucp or
isl@integ.co.uk. The North American retailer is Computable
Functions Inc. For more informatin, write to Computable Functions Inc.,
35 S. Orchard Drive, Amherst, MA 01002, call 413-253-7637, or fax
413-545-1249. Contact Robin Popplestone, pop@cs.umass.edu, for info
on a new book on Pop-11. There's a users mailing list, and a newsgroup
as well (comp.lang.pop).
Prolog-2 (Commercial Version), is a high-level emulator with
interpreter and compiler for IBM PC (MS-DOS, Windows 3.0/3.1), and
386-up. (Non-PC versions for Sun3, Sun4, HP9000 (Unix), RS/6000
(Unix), and VAX (VMS) are no longer supported, since ESI, the new
owners, are also distributors for BIM-Prolog.) It is an Edinburgh
standard prolog with a number of extensions. The windows version
includes BIPs for programming windows graphics and dialogues. For
more information, write to Expert Systems International (ESI), Attn:
Leo Mulders, PO Box 148, NL-3700 AC ZEIST, the Netherlands, call
+31-3404-22911, fax +31-3404-32888, or email <prolog@esi.nl>. To join
the user's group, send mail to prolog2-request@hplb.hpl.hp.com.
Prolog III integrates constraint programming with Prolog. It runs on
Apple Macintosh, IBM PC (386, MS-DOS), Next, Sun3, Sun4, Sparc, HP9000,
Apollo, RS/6000, Bull DPX, Masscomp (Unix), Vax (Ultrix, VMS),
DecStation and MicroVAX. For more information, write to PrologIA,
Parc Technologique de Luminy, Case 919, 13288 Marseilles cedex 09, France,
call 33-91-26-86-36, fax 33-91-41-96-37, or send email to
prolia@dcftlx.das.net or prolia@tlxf.geomail.org. The US point of contact
for Prolog III by PrologIA is BIM Systems, Inc.
Prolog-86 is available from Solution Systems Inc. For more
information, write to Solution Systems Inc., 335-D Washington Street,
Norwell, MA 02061, call 617-337-6963, or fax 617-431-8419.
PTC (Prolog To C) is a portable Prolog compiler based around an
optimized Prolog to ANSI C compiler. It runs on Sun, SGI, IBM (Unix),
and HP. PTC includes an integrated compiler/interpreter,
project-file-based compilation, a Motif user interface, editor,
debugger, online help, and support for C modules. It costs $1,495 for
the development environment and $795 for each additional runtime
library. The standalone environment is $495. For more information,
write to Paralogic Inc., 115 Research Drive, Bethlehem, PA 18015,
call 215-861-6960, fax 215-861-8247 or send email to
plogic@lehi3b15.csee.Lehigh.edu.
Quintec Prolog is a high-level emulator with interpreter for IBM PC
(MS-DOS), and Unix workstations such as Vax, VAXstation (Ultrix, VMS),
Decstation (Ultrix), and Sparc (SunOS4.0). For more information,
write to Quintec Prolog, Quintec Systems Ltd., Midland House, West Way,
Botley, Oxford OS2 0PL, UK, call +44 865 791565, or fax +44 865 791595.
Quintus Prolog is a complete Prolog development system with extensive
Prolog libraries, graphical user interface, source-linked debugger,
profiler, on-line help, interface to X Windows, and user-customizable
I/O and memory management. Quintus Prolog supports development of
stand-alone applications, as well as fully embeddable Prolog modules,
which may be called as subroutines from other languages. There are no
royalties on applications developed with Quintus Prolog. Quintus
offers Prolog-based solutions for database, expert system, and GUI
developers. Quintus also provides Prolog consulting and Prolog
training. Platforms include DEC Alpha (OSF/1), HP 9000 (HP-UX), IBM
RS/6000 (AIX), PC (DOS, Windows, Windows NT, Solaris, OS/2), Macintosh 32bit,
SGI (IRIX), Sun SPARC (SunOS, Solaris). For product information and
Prolog training schedules contact Quintus Corporation, 301 East Evelyn
Avenue, Mountain View, CA 94041, call 415-254-2800 or 800-542-1283 (US),
fax 415-428-0211, or send email to sales@quintus.com. To be added to
the users group mailing list, email to quintus-users-request@quintus.com.
The email address for technical support is teksup@quintus.com.
SICStus Prolog:
SICStus Prolog 2.1 is an Edinburgh compatible Prolog that runs on
Macintosh, 386/486 (MSDOS), and most UNIX platforms. It includes a
WAM-based emulator and compiler, native code compilation for Sparc and
680x0, indexed interpreted and compiled predicates mixed arbitrarily,
support for cyclic terms, garbage collection and stack shifting,
backtrackable side-effects, coroutining facilities, exceptions, unbounded
precision integer arithmetic, double precision floating point arithmetic,
extended set of built-in arithmetic functions, a Boolean constraint solver,
socket communication, support for building stand-alone applications,
bidirectional C/Prolog interface, user-defined streams and signals, a GNU
Emacs interface, execution profiling, a "procedure box" debugger, and a
module system. It comes with a library of utility modules implementing
commonly needed algorithms and data types, an external store for Prolog
facts with user-defined indexing, an object-oriented extension (SICStus
Objects), and a package for GUI construction.
Muse is an OR-parallel version of SICStus Prolog. Muse runs on several
multiprocessor platforms and supports full Prolog and most builtins. The
current version is a research version based on SICStus Prolog 0.6, but soon
it will be integrated into the main SICStus Prolog release.
Mixtus is an automatic partial evaluator for SICStus Prolog. Presently
it is distributed separately. Contact dan@sics.se for more information.
Available third-party products include:
+ APPEAL 2.1 (an interface and language to program X Toolkit
applications, email: appeal@dslogics.it, or write to: Cristina
Ruggieri, DS logics S.r.l., Viale Silvani 1, 40122, Bologna, Italy,
Tel. +39-51-521285, Fax. +39-51-522109)
+ XPCE and PI X Windows interfaces (see [1-9])
+ PRODATA (a tight coupling to Oracle, Ingres or Sybase relational
database systems, write to: Keylink Computer Ltd., 2 Woodway House,
Common Lane, Kenilworth, Warwickshire CV8 2ES, UK, Tel: +44-926-50909,
Fax: +44-926-864128)
+ NP Module (an interface to a highly efficient propositional
logic theorem prover. Contact: Logikkonsult NP AB,
Jakobdalsv{gen 13, 126 53 H{gersten, Sweden.
Tel: +46-8-188809, Fax: +46-8-183210 ).
Personal, academic and commercial licenses are available. More
information is available on the WWW
http://www.sics.se/ps/sicstus.html
or by writing to SICS, Swedish Institute of Computer Science, PO Box 1263,
S-164 28 KISTA, Sweden, calling +46 8 752 15 02, fax +46 8 751 72 30, or
sending email to sicstus-request@sics.se or sicstus@sics.se. Bug reports
and tech support questions should be sent to sicstus-bug@sics.se. To
subscribe to the users group and implementors mailing list, send email
to sicstus-users-request@sics.se.
SNI Prolog Version 3 is an implementation of the Prolog language that
is compatible with the ISO Standard draft. It is available from
Siemens Nixdorf for Unix workstations for about DM 11100 in Germany.
SNI Prolog runs on the SGI, SNI and Sun platforms, and ports to other
systems, including MS-DOS, are in progress. Includes coroutines,
finite domains, numerical and boolean constraints, garbage collection,
incremental compilation, dynamic linking, hypertext style on-line
help, a window environment with an integrated editor, interfaces to
INFORMIX, Motif/XWindows and C. The constraint programming features of
SNI Prolog provide support for solving problems from operations
research such as dynamic resource allocation and flexible scheduling
with numerical constraints or the verification of complex systems with
Boolean constraints. For more information, write to Siemens Nixdorf
Informationssysteme AG, Otto-Hahn-Ring 6, D-8000 Munich 83, Germany,
Attn: Hans-Juergen Stenger, Systems Planning, call +49 89 636 44049,
fax +49 89 636 41208, or send email to stenger@sd235-hera.zfe.siemens.de.
SPIES YAP is a high-level emulator with interpreter for the Apple
Macintosh, Amiga (Atari ST), and Unix workstations including Sun3,
Sun4, VAXstation, SGI, and HP9000. For more information, write to
SPIES, Sociedade Portuguesa de, Importacao e Exportacao de Software,
Lda Av da Republica, 46 - 2, 1000 Lisboa, Portugal, call +351 1
795075, or fax +351 1 775891.
Turbo Prolog. See PDC Prolog.
XPRO 5.0 is a Prolog development environment for OS/2. It includes
a 32-bit Prolog interpreter/compiler and a rule compiler than compiles
natural language-style rules into Prolog code. Includes a C/C++
interface. Costs $299 (no runtime or license fees). For more
information, contact: Rational Vision, 7111 West Indian School Road,
Suite 131, Phoenix, AZ 85033, or phone 602-846-0371.
See also CHIP V4 from COSYTEC in [2-6].
----------------------------------------------------------------
Subject: [2-3] Free Parallel Prolog Implementations
This section contains free parallel Prolog and logic programming
implementations.
BAP:
Brain Aid Prolog (BAP) is a Concurrent Sequential Processes (CSP)
based standard Prolog for Transputer networks. BAP uses its own MS
Windows or X Windows server for I/O. Special features include
automatic topology adapation and concurrent source level debugging
(see several processes exchange messages). Performance is pretty high,
comparable to that of other Prolog compilers. BAP has achieved good
results (>80% efficiency) when executing applications like N-queens or
checkers in parallel on an 8 processor network. A demo version that
supports Transputer systems with a maximum of 2 processors is
available by anonymous ftp from
unlisys.in-berlin.de:/pub/brainaid/
and also from the CMU AI Repository, in
ftp.cs.cmu.edu:/user/ai/lang/prolog/impl/parallel/bap/
A full version for up to 128 nodes is also available for both SUN and
PC. Write to Frank Bergmann <fraber@cs.tu-berlin.de> or
<bap_info@brainaid.in-berlin.de> for more information.
BeBOP:
The BeBOP language combines sequential and parallel Logic Programming
(LP), object oriented programming and meta-level programming. The LP
component offers both don't know non-determinism and stream AND
parallelism, a combination not possible with concurrent LP languages.
BeBOP's object oriented features include object IDs, encapsulation,
message passing, state updating, and object behaviour modification.
The meta-level capabilities are based on the treatment of Prolog
theories as first order entities, which enables them to be updated
easily and lets fragments to be passed between objects in messages.
BeBOP is implemented by translation down to NU-Prolog, and its
parallel extension, PNU-Prolog. The BeBOP system (BeBOP and bp) and
the PNU-Prolog preprocessor pnp can be obtained by anonymous ftp from
munnari.oz.au:/pub/bebop.tar.Z [128.250.1.21]. The release comes with
a user manual, several papers (in Postscript format), sample programs,
and source code. The BeBOP system requires the NU-Prolog system,
compiler and interpreter, the pnp preprocessor (which is included as
part of the BeBOP system release), GCC or a similar compiler, Yacc (or
Bison) and Lex. For more information, contact Andrew Davison,
<ad@cs.mu.oz.au>, Dept. of Computer Science, University of Melbourne,
Parkville, Victoria 3052, Australia, call +61 3-287-9172/9101, or fax
+61 3-348-1184.
KLIC:
KLIC is a portable implementation of KL1 (an extended Flat GHC), a
concurrent logic programming language developed at ICOT in Japan.
Runs on Suns, HPs, DECs, and Linux PC's and marks 2 MLIPS on
SparcStation 10/30 and 4MLIPS on system with 200MHz Alpha. A
sequential version available via anonymous ftp from ftp.icot.or.jp.
Parallel versions planned shortly. A representative paper on the
language is Kazunori Ueda and Takashi Chikayama, "Design of the
Kernel Language for the Parallel Inference Machine", The Computer
Journal, December, 1990. A paper on its KLIC implementation is
Takashi Chikayama, Tetsuro Fujise and Daigo Sekita, "A Portable and
Efficient Implementation of KL1", PLILP'94 (LNCS #844,
Springer-Verlag). For more information, send an email to
klic-requests@icot.or.jp or write to ICOT Free Software Desk,
Institute for New Generation Computer Technology, 21st Floor, Mita
Kokusai Bldg., 4-28, Mita 1-chome, Minato-ku, Tokyo 108, Japan, fax
+81-3-3456-1618.
Multi-BinProlog:
Multi-BinProlog 2.00 is a prototype Linda-style parallel extension to
BinProlog 1.71 developed by Koen De Bosschere and Paul Tarau. It uses
Koen's C-parser and C-writer which together speed-up IO considerably.
It works with shared-memory and remote procedure calls and is
available from clement.info.umoncton.ca:MultiBinProlog/
See BinProlog in [2-1] for more information.
NCL:
NCL (Net-Clause Language) is aimed at describing distributed
computation models using term unification as a basic processing and
control mechanism. It is embedded in standard Prolog and comprises two
parts -- net-clauses and data-driven rules, which can communicate each
to other and to standard Prolog programs. A net-clause is a special
domain in the database defining a network of nodes and links. The
nodes are represented by Prolog compound terms. The variables
occurring within the nodes are global logical variables, which can be
shared within the scope of the net-clause thus playing the role of
network links. Two control mechanisms are implemented: a spreading
activation scheme similar to the connectionist spreading activation
and to the marker passing mechanism in SN (in logic programming it is
seen as a restricted forward chaining) and a default mechanism based
on using variables to propagate terms without being bound to them,
thus implementing the non-monotonicity of default reasoning. The
Data-driven Rules implement a full scale forward chaining for Horn
clauses. They simulate a data-driven parallel computation, where each
rule is a process (in contrast to the traditional parallel logic
programming where each goal is a process). The NCL/Prolog interpreter
along with a reference manual and a set of examples is available by
anonymous ftp at ai.uga.edu:/pub/misc/ncl.tar.Z. For more information
contact Zdravko Markov, Institute of Informatics, Bulgarian Academy of
Sciences Acad.G.Bonchev Street, Block 29A, 1113 Sofia, Bulgaria,
<markov@iinf.bg>.
PCN:
PCN (Program Composition Notation) is not a logic programming
language, but it has similarities to Strand and other concurrent logic
programming languages. PCN is a parallel programming system that
provides a simple language for specifying concurrent algorithms,
interfaces to Fortran and C, a portable toolkit that allows
applications to be developed on a workstation or small parallel
computer and run unchanged on supercomputers, and integrated debugging
and performance analysis tools. PCN includes a runtime system,
compiler, linker, a set of standard libraries, virtual topology tools,
a symbolic debugger (PDB), an execution profiler (Gauge), and a trace
analysis tool (Upshot). PCN was developed at Argonne National
Laboratory and the California Institute of Technology. PCN runs on
Sun4, NeXT, IBM RS/6000, SGI Iris, Intel iPSC/860, Intel Touchstone
DELTA, Sequent Symmetry running Dynix (not PTX), and should be easy to
port to other architectures. PCN is in the public domain and can be
obtained by anonymous ftp from
info.mcs.anl.gov:/pub/pcn/pcn_v2.0.tar.Z
The distribution includes a user's guide containing a tutorial and
reference material. For further information on PCN, please send email to
<pcn@mcs.anl.gov> or contact Ian Foster <foster@mcs.anl.gov>
708-252-4619 or Steve Tuecke <tuecke@mcs.anl.gov> 708-252-8711.
ROLOG:
ROLOG is a parallel PROLOG compiler with a reduce-OR process model.
It is available by anonymous ftp from cs.uiuc.edu:/pub/ROLOG/.
See also IC-Prolog II (a multi-threaded Prolog) in [2-1].
----------------------------------------------------------------
Subject: [2-4] Commercial Parallel Prolog Implementations
This section contains commercial parallel Prolog and logic programming
implementations.
Densitron CS Prolog is a parallel prolog compiler and interpreter for
IBM PCs (MS-DOS or OS/2), T414/T800 transputer (mono or multi), 386
(Unix V), uVAX (VMS), or VAX(VMS). Also standard Prolog for MS-DOS,
UNIX and VAX. For more information, write to Densitron, Unit 4,
Aiport Trading Estate, Biggin Hill, Kent, TN16 3BW, UK, call +44 959
76331, or fax +44 959 71017.
Paralogic is a parallel implementation of the Clocksin and Mellish
Prolog. It runs on DOS-based PCs or Apple Macintoshes with the INMOS
Transputers. For more information, write to Paralogic Inc., 115
Research Drive, Bethlehem, PA 18015, call 215-861-6960, fax
215-861-8247 or email plogic@lehi3b15.csee.Lehigh.edu. It is also
distributed by Computer Systems Architects, 905 N. University Avenue,
Provo, UT 84604-3422, 800-753-4272 (801-374-2300), or fax 801-374-2306
as n-parallel Prolog.
PARLOG is a parallel emulator from Imperial College for the Sequent
Balance, Sequent Symmetry, Encore Multimax, Alliant FX (Unix), Sun
(Unix, 1 processor). For more information, write to Imperial College,
Department of Computing, Parlog Distribution Secretary, 180 Queen's
Gate, London SW7 2BZ, UK, call +44 71 589 5111 x7537, fax +44 71 589
8024, or send email to parlog@doc.ic.ac.uk. The single processor
versions of PARLOG for the Sun-3 and Sun-4 are now available free of
charge. Please refer to the entry regarding IC-Prolog II in this
Resource Guide. Parallel Logic Programming produces PC-PARLOG and
MacPARLOG for the IBM PC and Macintosh computers. For more
information contact Parallel Logic Programming Ltd., PO Box 49,
Twickenham, Middlesex TW2 5PH, UK or call +44 454 201 652.
Strand-88 is a parallel emulator for Sun3, Sun4, Sparc BBN Butterfly,
GPT2000, Cogent Multimax, Intel iPSC/2, iPSC/860, MIPS RiscStation,
Sequent Symmetry Balance (Unix System V or Mach, Helios) and
communication component from CSTools, Express in some cases. Also
Transputer systems PC hosted systems from Paracom, Telmat and others,
Unix hosted systems from Meiko, Paracom, Telmat and others, Apple
Macintosh, Atari ATW, and NeXT. Price dependent on configuration and
scale of target machine. For more information, write to Strand
Software Technologies Ltd., Ver House, London Rd, Markyate, Herts AL3
8JP, UK, call +44 582 842424, fax +44 582 840282, or send email to
strand88@sstl.uucp.
SICS Aurora and Echo. See SICStus Prolog above.
----------------------------------------------------------------
Subject: [2-5] Free Constraint Systems
This section contains constraint systems, constraint logic programming
systems, concurrent constraint languages, and other constraint
processing systems.
CIAL:
CIAL 1.0b is an interval constraint logic programming language. The main
difference between CIAL and other CLP(Interval) languages is that a
linear constraint solver, which is based on preconditioned interval
Gauss-Seidel method, is embedded in CIAL in addition to the interval
narrowing solver.
The main motivations for a linear solver are:
* Pure interval narrowing fails to narrow the intervals to any useful
width even for such simple systems as {X+Y=5, X-Y=6}. Interval
splitting may help but is costly.
* Pure interval narrowing cannot always detect inconsistency or halt
(in a reasonable time). A simple example is {A+1=D, A+B=D, A>0, B<0}.
* Efficient linear constraint solver is also important to the study of
efficient non-linear constraint-solving. Recent results show that
interval Newton method works better than pure interval narrowing for
solving non-linear constraints, but may require to solve many linear
constraints in order to give the best results.
This version of CIAL prototype is implemented as an extension to CLP(R)
v1.2 and tested on Sun Sparc machines. You should have obtained CLP(R)
from IBM prior to installing CIAL. The distribution is in the form of
patches to the CLP(R) sources. [See entry on CLP(R) below].
Send email to cial@cs.cuhk.hk to request CIAL, and for more details.
Relevant papers include
C.K. Chiu and J.H.M. Lee, "Towards practical interval constraint solving
in logic programming", in Proceedings of the Eleventh International
Logic Programming Symposium, Ithaca, NY, USA, November 1994 (to appear).
J.H.M. Lee and T.W. Lee, "A WAM-based abstract machine for interval
constraint logic programming and the multiple-trailing problem", in
Proceedings Sixth IEEE International Conference on Tools with
Artificial Intelligence, New Orleans, Nov 1994.
cu-Prolog:
cu-Prolog is an experimental constraint logic programming language
available free from Japan's Institute for New Generation Computer
Technology (ICOT). Unlike most conventional CLP systems, cu-Prolog
allows user-defined predicates as constraints and is suitable for
implementing a natural language processing system based on the
unification-based grammar. For example, the cu-Prolog developers
implemented a JPSG (Japanese Phrase Structure Grammar) parser in
cu-Prolog with the JPSG Working Group (the chairman is Prof. GUNJI,
Takao of Osaka University) at ICOT. cu-Prolog is a complete
implementation of Constraint Unification (cu), hence the name.
cu-Prolog is implemented in C for BSD UNIX 4.2/3. Professor Sirai of
Chukyo-University has also implemented cu-Prolog for the Apple
Macintosh and DJ's GPP (80386/486 MS-DOS machine with the DOS
extender). cu-Prolog is available free by anonymous ftp from
ftp.icot.or.jp. For further information, send email to ifs@icot.or.jp,
or write to ICOT Free Software Desk, Institute for New Generation
Computer Technology, 21st Floor, Mita Kokusai Bldg., 4-28, Mita
1-chome, Minato-ku, Tokyo 108, Japan, fax +81-3-3456-1618.
clp(FD):
clp(FD) 2.2 is a constraint logic programming language over finite
domains and booleans based on the wamcc Prolog compiler (see [2-1]).
clp(FD) provides several constraints "a la CHIP" on finite domains and
booleans and some facilities for building new constraints. clp(FD) is
4 times faster than CHIP v3.2 on average. clp(FD) requires GCC 2.4.5
or higher and has been tested on Sparc workstations, DEC (Ultrix),
Sony MIPS (R3000), and 386/486 PCs under linux. It should be
easily ported to 32-bit machines with GCC. clp(FD) is available free
by anonymous ftp from
ftp.inria.fr:/INRIA/Projects/ChLoE/LOGIC_PROGRAMMING/clp_fd/
For more information, write to Daniel Diaz <Daniel.Diaz@inria.fr>,
INRIA Rocquencourt, FRANCE.
CLP(R):
CLP(R) is a constraint logic programming language with real-arithmetic
constraints. The implementation contains a built-in constraint solver
which deals with linear arithmetic and contains a mechanism for delaying
nonlinear constraints until they become linear. Since CLP(R) subsumes
PROLOG, the system is also usable as a general-purpose logic programming
language. It includes facilities for meta-programming with constraints.
The system consists of a compiler, byte-code emulator, and constraint
solver. CLP(R) is written entirely in C and runs on Suns, Vaxen,
MIPS-based machines (Decstations, Silicon Graphics), IBM RS6000s and
PS2s. Includes MS-DOS support. It is available free from IBM for
academic and research purposes only. To get a copy, write
to Joxan Jaffar, H1-D48, IBM Thomas J. Watson Research Center,
P.O. Box 704, Yorktown Heights, NY 10598, or send email to
joxan@watson.ibm.com or joxan@yktvmh.bitnet. Current version 1.2.
For more information, write to Joxan or Roland Yap
<roland@bruce.cs.monash.edu.au>.
See also ECLiPSe, Beta-Prolog, and LIFE in [2-1] and ALE in [1-5].
----------------------------------------------------------------
Subject: [2-6] Commercial Constraint Systems
This section contains constraint systems, constraint logic programming
systems, concurrent constraint languages, and other constraint
processing systems.
CHIP V4 (Constraint Handling In Prolog) is designed as an extension to
Prolog offering three constraint solving domains: Integers, Rationals
and Booleans. The system was originally developed at ECRC in Munich
and now extended by the same team at COSYTEC in Paris. CHIP V4
includes extensions to the three domains: symbolic constraints, update
demons and cumulative constraints. The system is available with
optional interfaces for X11 and DOS graphics (XGIP), Oracle or Ingres
database connection (QUIC), C language interface (CLIC) and embedded
application interface (EMC). CHIP V4 is written completely in C, and
is available on a range of workstations including SunSparc (SunOS
4.1), IBM RS6000 (AIX 3.2), HP 9000/700 series (HPUX 9.0) and
Decstation 3000 & 5000 (Ultrix 4.2) and PC386/486 (Dos 5.0).
Development and Runtime licences can be purchased for single-user,
multi-user or site licences together with support and maintenance. An
academic discount is offered for educational and research purposes.
For more information contact COSYTEC, Parc Club Orsay Universite 4 rue
Jean Rostand, 91893 Orsay Cedex, France, phone +33-1-60-19-37-38, fax
+33-1-60-19-36-20 or email <cosytec@cosytec.fr>. The Tech Support
email address is help@cosytec.fr. COSYTEC is a founding
member of the PVG (Prolog Vendors Group).
CLP(R) is a constraint system from Monash University for VAX, Sun, and
Pyramid (Unix). Costs $150. For more information, write to Monash
University, CLP(R) Distribution, Department of Computer Science,
Clayton, Victoria 3168, Australia, or send email to
clp@moncsbruce.oz.au.
ILOG SOLVER (formerly called PECOS) is a C++ library that implements a
CLP (Constraint Logic Programming) instance known as finite domains.
It is available on most Unix platforms, including Sun, HP, IBM
RS-6000, DEC, and SGI, and on Windows 3.1 for both Microsoft Visual
C++ and Borland C++. This library includes:
- Prolog control structures: non determinism, choice points,
backtracking and cut. Modification of user-defined objects can be
trailed so that their state is restored when a failure occurs.
- Finite domain logical variables, and associated constraints.
- Finite set logical variables and associated constraints.
- Interval floating point variables, and associated
constraints, analogous to what is found in BNR Prolog.
- Predefined search and optimization algorithms.
ILOG SOLVER does not use unification for passing arguments. This
enables a smooth integration with C++. For further information: In the
USA and Canada, contact ILOG, Inc., 2073 Landings Drive, Mountain
View, CA 94303, phone (415) 390-9000, fax (415) 390-0946, e-mail
info@ilog.com. Outside the USA and Canada: contact ILOG SA, 12 avenue
Raspail, 94251 Gentilly Cedex, France, tel (+33 1) 4740-8000,
fax (+33 1) 4740-0444, e-mail info@ilog.fr, or URL
http://www.ilog.fr/ilog/home.html
See also http://www.ilog.fr for some papers about Ilog Solver and Ilog
Schedule.
VS Trilogy is a Prolog compiler available from Vertical Software for
$395. For more information, write to Vertical Software Ltd., 14-636
Clyde Ave, W. Vancouver, BC, V7T 1E1, Canada, call 604-925-0321, or fax
604-688-8479.
See also Prolog III and SNI Prolog in [2-2].
----------------------------------------------------------------
Subject: [2-7] Free Logic Programming Systems
ALF:
ALF (Algebraic Logic Functional programming language) is a
language which combines functional and logic programming techniques.
The foundation of ALF is Horn clause logic with equality which
consists of predicates and Horn clauses for logic programming, and
functions and equations for functional programming. The abstract
machine is based on the Warren Abstract Machine (WAM) with several
extensions to implement narrowing and rewriting. In the current
implementation programs of this abstract machine are executed by an
emulator written in C. It is available by anonymous ftp from
ftp.germany.eu.net:/pub/programming/languages/LogicFunctional/
(aka simpson.germany.eu.net) as the files alf_*.zoo
(Documentation, C sources for the emulator, the preprocessor and the
compiler). For further information, contact Rudolf Opalla
<opalla@julien.informatik.uni-dortmund.de>.
CORAL:
CORAL is a deductive database/logic programming system developed at
the University of Wisconsin-Madison. It is a declarative language
based on Horn-clause rules with extensions like SQL's group-by and
aggregation operators, and uses a Prolog-like syntax.
CORAL is available via anonymous ftp from ftp.cs.wisc.edu:/coral/. The
distribution includes source code compatible with AT&T C++ Version 2.0
or later, executables for Decstations and SUN 4s, the CORAL User
Manual, and some related papers containing a language overview and
implementation details. (A version of the source code compatible with
GNU g++ will be available shortly.) For more information, contact
Raghu Ramakrishnan, <raghu@ricotta.cs.wisc.edu>.
Lolli:
Lolli is an interpreter for logic programming based on linear logic
principles. Lolli, named for the linear logic implication operator
"-o" called lollipop, is a full implementation of the language
described in the paper "Logic Programming in a Fragment of
Intuitionistic Linear Logic" (Josh Hodas & Dale Miller, to appear in
Information and Computation), though it differs a bit in syntax, and
has several built-in extra-logical predicates and operators. Lolli is
available by anonymous ftp from
ftp.cis.upenn.edu:/pub/Lolli/Lolli-07.tar.Z
This distribution includes full ML source, along with a Makefile, as well
as several background papers and a collection of example programs. For
those who do not have SML-NJ at their site, the authors hope to
provide pre-built binaries for a variety of architectures. These
binaries can be found on
ftp.cis.upenn.edu:/pub/Lolli/binaries/
At present Sparc and NeXT binaries are available. If you compile
lolli on a new architecture, please contact Josh Hodas at
<hodas@saul.cis.upenn.edu> so that he can make your binary available.
See also LIFE, SLG, and XSB in [2-1] and BeBOP in [2-3].
----------------------------------------------------------------
Subject: [2-8] Commercial Logic Programming Systems
None so far. This is to be expected, as most logic programming systems
are experimental.
----------------------------------------------------------------
Subject: [2-9] Other Commercial Prolog Products
ClauseDB is a database manager for Prolog data. Advanced
knowledge-based applications often need to use a large number of
highly complex data objects. The objects are so complex that they
cannot be managed in a standard commercial RDB product, and the number
of them makes it impractical to store them in the standard Prolog
in-memory database. ClauseDB may also be useful even in Prolog
applications whose data can be handled in a RDB. The retrieval
procedure of ClauseDB is integrated in the Prolog search method. This
avoids the performance problems that arise with the standard scheme
for coupling Prolog with a RDBM (e.g., those caused by the well-known
mismatch problem between tuple- and set-based retrieval methods).
ClauseDB supports all the normal Prolog data objects (arbitrary terms
and clauses) and provides a locking mechanism that allows the sharing
of data while ensuring its integrity. ClauseDB 2.0 is available on
SUN SPARC (SunOS 4.x and 5.x) and the INTEL PC running Solaris 2.x.
For more information write to BIM sa/nv, ProLog by BIM dept.,
Kwikstraat 4, B - 3078 Everberg, Belgium, call ++32 2 759 59 25, fax
to +32 2 725 47 83 or e-mail to prolog@sunbim.be.
----------------------------------------------------------------
Subject: [2-10] Prolog extensions, meta-interpreters, and pre-processors
ProFIT (Prolog with Features Inheritance and Templates) is an extension
of Prolog with sorted feature structures (including multi-dimensional
inheritance), finite domains, feature search, cyclic terms, and
templates. ProFIT works as a pre-processor, which takes a file
containing a ProFIT program as input, and gives a file with a Prolog
program as output. Sorted feature terms and finite domains are
compiled into a Prolog term representation, and the usual Prolog term
unification is used at runtime, so that there is no slowdown through a
unification algorithm, and no meta-interpreter is needed. ProFIT uses
the same techniques for compiling sorted feature terms and finite
domains into Prolog terms as the Core Langauge Engine of SRI Cambridge
and the Advanced Linguistic Engineering Platform (ALEP 2.2) by the
European Community, BIM, and Cray Systems. ProFIT is not a grammar
formalism (although it is motivated by NLP), although it provides some
ingredients that are considered typical of grammar formalisms. The goal
of ProFIT is to provide these datatypes without enforcing any
particular theory of grammar, parsing or generation. ProFIT can be used
to extend your favourite Prolog-based grammar formalism, parser and
generator with the expressive power of sorted feature terms. Cyclic
terms can be printed out and a user-configurable pretty-printer for
feature terms is provided. ProFIT is available free of charge by
anonymous ftp from
coli.uni-sb.de:/pub/profit/
and is implemented in Sicstus Prolog (2.1 #9). For more information,
write to Gregor Erbach, Univ. Saarlandes, Saarbruecken, Germany
<erbach@coli.uni-sb.de> <http://coli.uni-sb.de/~erbach>.
----------------------------------------------------------------
;;; *EOF*